草庐IT

PHP readdir 和排序

全部标签

redis - 如何解决 Redis 排序集绘制?

我正在使用Redis处理用户积分排名,我必须:存储用户积分获取用户排名位置所以我使用zincrby来更新排名位置,然后我使用zrevrangebyscore作为顶级列表,zscore和zrevrank以获得我需要的一切。因此,当出现抽奖案例时(实际上我有很多),我不能相信Redis的排序标准。我抽奖的获胜标准是日期,最老的排在第一位。这些是我正在存储的MongoDBID,因此我实际上可以从_id中检索日期。所以,如果我想知道用户的实际排名获取用户获得的分数,可能使用zrevrank。获取所有积分相同的用户。考虑上限和下限。按从MongoID获取的日期对具有相同积分的用户进行排序。根据其

redis - 在 Redis 中,如何在多个排序集合中获得最高分?

假设我有多个排序集:zset1zset2zset3这是所有集合的数据:zset1-----A:1B:22C:4D:555zset2-----N:14O:15P:16D:2750zset3-----D:333Y:0Z:1这就是我想要的结果。哪些zsets包含最高值的key对。这些key对是什么?Results-------zset2:D:2750zset1:D:555zset3:D:333zset1:B:22...我研究过使用ZINTERSTORE,但它似乎无法在多个zsets中仅获得前100个最高分。如果重要的话,我有成百上千个zset。 最佳答案

node.js - Redis 在哈希列表中按喜欢排序?

抱歉,如果我的术语有误,但我有一个feed哈希列表。即feed:1,feed:2,feed:3在这些散列中我有一些键和值。即在feed:1中我有likes:300。我有一个名为feeds:fid的列表,其中列出了所有的提要ID。因此,如果我想获取所有提要,我可以在我的node.js中执行这样的方法module.getObjects=function(keys,callback){helpers.multiKeys(redisClient,'hgetall',keys,callback);};我不确定如何对它们进行排序,以便按最喜欢的方式对所有Feed项目进行排序?理想情况下,我只想获得

python - 在 redis 中使用排序集的替代数据模型(对于 Django/Python 项目)

我有一个网络应用程序,用户可以在其中发布文本消息供其他人阅读(有点像Twitter)。我需要保存50个最新的message_id和发帖人的user_id对(以备后用)。我使用redis后端并意识到我可以将这50个最新对保存在一个排序集中:user_id作为值,message_id作为分数。既然user_id可以重复,我需要将NX标志设置为true。这个,根据thedocs,确保将新成员添加到排序集中而不是更新现有成员。这很有帮助,因为如果同一用户多次发布消息,新条目将添加到排序集中,而不是覆盖现有条目。这样可以保持数据的完整性。问题是:我的应用程序使用python,并且在Redis2.

Php Redis 在 Sets 中添加值而不排序

我正在尝试为我的网站构建一个站点地图生成器,因此尝试从我的网站收集链接,然后遍历这些链接以收集找到的更多链接。例如:$redis=newRedis();$redis->connect('127.0.0.1',6379);$redis->sAdd('myLinks','www.example.com');$redis->sAdd('myLinks','www.example.com/1');$redis->sAdd('myLinks','www.example.com/2');$redis->sAdd('myLinks','www.example.com/3');...但是当我检查我的设

javascript - 如何按值对redis中的哈希进行排序

我是这个redis的新手,所以请帮助我!我正在使用此命令将值存储在redis中,client.hmset('top_trend',array[0],0);client.expire('top_trend',86400,redis.print);如果我尝试使用此命令再次设置相同的键,我将增加值“0”,if(client.hexists('top_trend',array[0])==true){client.hincrby('top_trend',array[0],1,redis.print);}这会将我的数据数组存储在redis中,例如,例如:key="top_trend""tamil"

sorting - 使用集合中的哈希对redis中的集合进行排序

我们以这种方式使用REPLredis-cli在redis中创建了3个哈希:hmsetredishop:items:Articulo1artist"MartinWessely"price12.99name"HandcraftedTreesMug"hmsetredishop:items:Articulo2artist"MartinWessely"price13.99name"HandcraftedTreesMug"hmsetredishop:items:Articulo3artist"MartinWessely"price14.99name"HandcraftedTreesMug"我检查了

sorting - Redis 排序集合

我正在尝试对以散列形式存储在Redis中的用户对象进行排序。key类似于users:valid:2、users:valid:5、users:valid:10、users:invalid:14等我的目标是获取按IDASC排序的用户,首先是有效用户。我另外将用户ID存储在一个排序集中,其中“分数”是一个过滤器ID。过滤器映射类似于{valid:0,invalid:1}$redis.zadd'sorted-ids',0,2$redis.zadd'sorted-ids',0,5$redis.zadd'sorted-ids',0,10$redis.zadd'sorted-ids',1,14它允许

redis - 使用 Redis 检查一个集合中的哪些键存在于另一个排序集合中的最佳方法是什么

假设我有一组在线用户,可能包含20,000个条目。接下来,假设每个用户都有自己关注的一组人。当用户登录时,我想查看他们以下列表中的哪些用户在线。据我所知,有两个选项。MULTIZINTERSTOREtemp2online,followingZRANGEtemp0-1DELtempMULTIEXEC或者,我可以让列表用户跟随列表,然后遍历所有用户,为每个用户触发一个ISMEMBER调用:SMEMBERSfollowingMULTIforeach(followingasfol){ISMEMBERonlinefol}MULTIEXEC这两种方法都不适合我。有没有更好的办法?如果不是,如果我们

redis - 按值对redis大数据进行排序

例如,我将如下数据设置到redis。SET"projects:views:PROJECT_NAME1"17SET"projects:views:PROJECT_NAME2"13SET"projects:views:PROJECT_NAME3"21PROJECT_NAME根据我从关系数据库中获取的项目记录名称而有所不同。如何按值对所有“project:views:*”进行排序。在这个例子中我们的输出应该是PROJECT_NAME321PROJECT_NAME117PROJECT_NAME213 最佳答案 像这样将它们添加到有序集合中: